Guided pattern mining for API misuse detection by change-based code analysis

نویسندگان

چکیده

Abstract Lack of experience, inadequate documentation, and sub-optimal API design frequently cause developers to make mistakes when re-using third-party implementations. Such misuses can result in unintended behavior, performance losses, or software crashes. Therefore, current research aims automatically detect such by comparing the way a developer used an previously inferred patterns correct usage. While has made significant progress, these techniques have not yet been adopted practice. In part, this is due lack process capable seamlessly integrating with development processes. Particularly, existing approaches do consider how collect relevant source code samples from which infer patterns. fact, collection usage pattern miners irrelevant leads false alarms instead finding true misuses. paper, we target problem (a) providing method that increases likelihood true-positive concerning given set changes agnostic concrete static, intra-procedural mining technique (b) introducing concept for just-in-time misuse detection analyzes at time commit. introduce different, lightweight search filtering strategies evaluate them on two real-world datasets determine their usefulness Our main results are (1) commit-based subsequent effectively decreases amount be analyzed, (2) particular method-level superior file-level filtering, (3) project-internal project-external find solutions different types thus complementary, (4) incorporating prior knowledge misused into negligible effect.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

extremal region detection guided by maxima of gradient magnitude

a problem of computer vision applications is to detect regions of interest under dif- ferent imaging conditions. the state-of-the-art maximally stable extremal regions (mser) detects affine covariant regions by applying all possible thresholds on the input image, and through three main steps including: 1) making a component tree of extremal regions’ evolution (enumeration), 2) obtaining region ...

Character Based Pattern Mining for Neology Detection

Detecting neologisms is essential in real-time natural language processing applications. Not only can it enable to follow the lexical evolution of languages, but it is also essential for updating linguistic resources and parsers. In this paper, neology detection is considered as a classification task where a system has to assess whether a given lexical item is an actual neologism or not. We pro...

متن کامل

Using Change Context with Statistical Learning for API Code Recommendation

Learning and remembering how to use APIs is hard. While codecompletion tools list all the API methods available on a given object, reading through a long list of API method names and their associated documentation is tedious, and users can be easily overloaded with too many suggestions. While several researchers proposed techniques for recommending APIs, their accuracy is low. We present a nove...

متن کامل

Behavioural API based Virus Analysis and Detection

The growing number of computer viruses and the detection of zero day malware have been the concern for security researchers for a large period of time. Existing antivirus products (AVs) rely on detecting virus signatures which do not provide a full solution to the problems associated with these viruses. The use of logic formulae to model the behaviour of viruses is one of the most encouraging r...

متن کامل

Sparse Code Filtering for Action Pattern Mining

Action recognition has received increasing attention during the last decade. Various approaches have been proposed to encode the videos that contain actions, among which self-similarity matrices (SSMs) have shown very good performance by encoding the dynamics of the video. However, SSMs become sensitive when there is a very large view change. In this paper, we tackle the multi-view action recog...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Automated software engineering

سال: 2021

ISSN: ['0928-8910', '1573-7535']

DOI: https://doi.org/10.1007/s10515-021-00294-x